In [1]:
from pathlib import Path
from ipyniivue import download_dataset
BASE_API_URL = "https://niivue.com/demos/images/"
DATA_FOLDER = Path("images")
# Download data for example
download_dataset(
BASE_API_URL,
DATA_FOLDER,
files=[
"mni152.nii.gz",
"narps-4965_9U7M-hypo1_unthresh.nii.gz",
"narps-4735_50GV-hypo1_unthresh.nii.gz",
],
)
Downloading mni152.nii.gz... Downloading narps-4965_9U7M-hypo1_unthresh.nii.gz...
Downloading narps-4735_50GV-hypo1_unthresh.nii.gz... Dataset downloaded successfully to images.
In [2]:
import ipywidgets
from ipyniivue import NiiVue
# based on https://niivue.github.io/niivue/features/additive.voxels.html
volumes = [
{"path": DATA_FOLDER / "mni152.nii.gz"},
{
"path": DATA_FOLDER / "narps-4965_9U7M-hypo1_unthresh.nii.gz",
"colormap": "red",
"cal_min": 2,
"cal_max": 4,
},
{
"path": DATA_FOLDER / "narps-4735_50GV-hypo1_unthresh.nii.gz",
"colormap": "green",
"cal_min": 2,
"cal_max": 4,
},
]
nv = NiiVue(
back_color=(1, 1, 1, 1),
show_3D_crosshair=True,
is_colorbar=True,
)
nv.load_volumes(volumes)
nv.volumes[0].colorbar_visible = False
sred = ipywidgets.FloatSlider(min=0.1, max=0.4, step=0.01, value=0.2)
ipywidgets.link((sred, "value"), (nv.volumes[1], "cal_min"))
sgreen = ipywidgets.FloatSlider(min=0.1, max=0.4, step=0.01, value=0.2)
ipywidgets.link((sgreen, "value"), (nv.volumes[2], "cal_min"))
controls = ipywidgets.HBox([sred, sgreen])
display(ipywidgets.VBox([controls, nv]))